home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 December
/
MACPOWER-1997-12.ISO.7z
/
MACPOWER-1997-12.ISO
/
AMUG
/
PROGRAMMING
/
Raven 1.2.sit
/
Raven 1.2
/
Documents
/
Architecture
next >
Wrap
Text File
|
1997-02-06
|
1KB
|
30 lines
Raven is divided into four layers:
Application is a framework for applications. It includes application,
document, and window classes.
Core is the middle layer. It includes a large number of generally useful
classes for things like graphics, sound, files, menus, commands, drag and
drop, preferences, etc.
Foundation contains low level classes for things like memory management,
debugging, broadcast/listener, exceptions, string utilities, geometry
classes, and so on.
Esoteria contains more exotic classes that most applications won't need.
It includes classes for compression, parsing, graphing, and mathematics.
Each layer is composed of a number of packages. These packages contain
a set of classes that work together to address some aspect of programming.
For example, the Files package contains wrappers for the FSSpec struct,
a file class, classes allowing you to iterate over the files in a folder,
a volume iterator, and object oriented interfaces to CustomGetFile and
CustomPutFile.
The code has been structured so that the lower levels know nothing about
the higher layers and the dependancies between packages have been minimized.
This makes Raven applications lighter weight and makes it relatively easy
to use the bottom two layers of Raven in other frameworks (eg see the
"Mixing Raven and PowerPlant" document).